"   . . .   H o w   d i d   i t   h a p p e n   ,   t e l l   m e .   " 
 
                                                                                                     (   f r o m   a   s o n g   a b o u t   c h e r r y   ) 
 
 
 
 
 
                               H o w   t o   w r i t e   T U T O R I A L   "   S T O R M   " 
 
                               = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 
 
 
 
                                                             A V   H o r e v 
 
                                   C h u v a s h   S t a t e   U n i v e r s i t y 
 
 
 
 
 
           I   w a n t   t o   t e l l   y o u   h o w   w e   d i d   t h i s   p r o g r a m   w i t h   a t   - 
 
 T r a p p e d   U s   p a c k a g e   A G D S ,   b e c a u s e   a   s i m p l e   d e s c r i p t i o n   o f   t h e   p a c k a g e   i n 
 
 I   t h i n k   i t   i s   n o t   e n o u g h   t o   s t a r t   i t s   o w n   p r o g r a m . 
 
 F i r s t   o f   a l l ,   I   w a n t   t o   w a r n   t h a t   a l l   o f   w h a t   w i l l   b e   d i s c u s s e d   h e r e   r e q u i r e - 
 
 b u e t   p r e l i m i n a r y   ( a l b e i t   c u r s o r y   )   r e f e r e n c e   d o c u m e n t a t i o n   c   p a s 
 
 c h u m   .   H e r e   I   w i l l   t r y   f i r s t   o f   a l l   t o   d r a w   y o u r   a t t e n t i o n   t o   t h e   G P   - 
 
 D e w   ,   w h o   o n c e   c a u s e d   d i f f i c u l t y   f o r   m e   p e r s o n a l l y   ,   a s   w e l l   a s   i n 
 
 I   t r y   t o   e x p l a i n   h o w   t o   w r i t e   t h i s   p r o g r a m   ,   w e   u s e   u c h i 
 
 l i t a s   p a c k a g e   a n d   ,   i n   g e n e r a l ,   a s   f r o m   m y   p o i n t   o f   v i e w ,   w e   c a n   w r i t e   s u c h 
 
 p r o g r a m . 
 
 
 
           S o   y o u   p u r c h a s e d   a   p a c k a g e   ,   r e a d   t h e   d o c u m e n t a t i o n   .   B u t   p r o b a b l y 
 
 a l l ,   y o u   d o   n o t   h a v e   t h e   f e e l i n g   t h a t   y o u   c a n   a l r e a d y   s t a r t   t o   n a p i s a   - 
 
 N I J   y o u r   p r o g r a m   a s   i t   d i d   n o t   a r i s e   a t   t h e   m o m e n t   a n d   I   ,   a l t h o u g h 
 
 N o w   y o u   a r e   o f f e r e d   m o r e   ,   r e f i n e d   m e   o n   t h e   b a s i s   o f 
 
 e x p e r i e n c e   w i t h   t h e   p a c k a g e   d o c u m e n t a t i o n   .   H e r e   i s   j u s t   r i g h t   t o   r e a d   i t   , 
 
 w h a t   i s   w r i t t e n   o n . 
 
 
 
           I t   i s   p o s s i b l e   t h a t   r e a d i n g   t h e   d o c u m e n t a t i o n   y o u   h a v e   w o n d e r e d 
 
 q u e s t i o n :   i f   I   c a n   w i t h i n   a   r e a s o n a b l e   t i m e   t o   l e a r n   t o   w o r k   w i t h   t h e   p a c k a g e   s o   t h a t   - 
 
 t o   w r i t e   y o u r   p r o g r a m   .   T h e r e f o r e ,   a   f e w   w o r d s   a b o u t   m y s e l f   .   I   F e l l o w   - 
 
 n i c k n a m e   f r o m   a n   e l e v e n   p r o g r a m m i n g   e x p e r i e n c e   ,   t h o u g h   a l l   m y   p r e v i o u s 
 
 s c h a y a   w o r k   i n   n o   w a y   w a s   n o t   r e l a t e d   t o   g a m e   p r o g r a m m i n g   ,   t r a i n i n g   - 
 
 f o r e c l o s i n g   p r o g r a m s   o r   a n y t h i n g   l i k e   t h a t   ,   h o w   l i k e l y   a n d   r e a d i n g 
 
 t h e s e   l i n e s   .   B u t   I   a l w a y s   w o n d e r e d   h o w   t o   w r i t e   s u c h   p r o g r a m s 
 
 a n d   I   g u e s s   t h a t   m o s t   l i k e l y   t h e y   w e r e   w r i t t e n   w i t h   t h e   h e l p   o f   s p e c i a l i z e d 
 
 f u l l   o f   t o o l s   a n d   t h a t   t h e y   n e e d   t o   c r e a t e   a   l o n g 
 
 t r a i n i n g   i n   t h i s   p a r t i c u l a r   a r e a   o f     p r o g r a m m i n g   t h a t   p e o p l e   -   C a t c h i n g 
 
 y u s c h i e s y a   t h i s   i s   p r o b a b l y   n o t   t h e   u s u a l   p r o g r a m m e r s   .   A l l   t h i s   i s   t r u e   .   b u t 
 
 I   m u s t   s a y   t h a t   t o   c r e a t e   a   f a i r l y   s i m p l e   t u t o r i a l 
 
 t y p e   "   S T O R M   "   e n o u g h   t o   h a v e   p r o g r a m m i n g   e x p e r i e n c e   i n   a t   l e a s t   o n e   o f 
 
 h i g h - l e v e l   l a n g u a g e s     ,   t h e   p e r s o n a l   c o m p u t e r   ,   t h e   p a c k a g e   A G D S ,   s u f f i c i e n t 
 
 t i m e   a n d   d e s i r e   t o   d o   i t .   B u t   r e l a t i v e l y   q u i c k l y   m a s t e r   p a c k a g e   y o u 
 
 a b l e   o n l y   i f   t h e   p r o g r a m m e r   F l a w l e s s   p r e p a r a t i o n   a n d   s o m e   - 
 
 t o r o g o   e x p e r i e n c e   i n   t h e   I B M   P C . 
 
 
 
           
 
                                                       H o w   w e   s t a r t e d 
 
                                                       = = = = = = = = = = = = = = = 
 
 
 
           I   m u s t   s a y   t h a t   t h i s   w o r k   e m e r g e d   q u i t e   u n e x p e c t e d l y   a n d 
 
 h a d   t o   b e   d o n e   ,   l a i d   i n   a   v e r y   s h o r t   p e r i o d   -   2   m o n t h s 
 
 w h i c h   a r e   t h e n   l e f t   t o   w r i t e   t h e   p r o g r a m   f o r   a b o u t   a   m o n t h   .   A t   t h e   t i m e   , 
 
 o n   m e   ,   w e   s t i l l   h a d   n o   i d e a   h o w   w e   w o u l d   d o   i t   a n y   s u i t a b l e   p r o g 
 
 r a m m n y h   t o o l s   f o r   t h e   j o b .   O n l y   I B M   P C   X T   a n d   s o m e   i n - 
 
 f o r m a t i o n   a b o u t   a   u n i q u e   p a c k a g e   A G D S .   I e   s t a r t i n g   - 
 
 n a t   w o r k   m u s t   b e   f r o m   s c r a t c h   ,   w i t h   n o   b a c k l o g s   ,   a n d   i t   m u s t   b e   c o n f e s s e d   , 
 
 v e r y   d i f f i c u l t . 
 
 
 
           U r g e n t l y   g o   t o   M o s c o w   ,   I   f i n d   t h e   b e s t   p a c k a g e   ,   b u t   t h e   b a s i c   v a l i d a t i o n 
 
 b e   h o m e   .   B u y   .   Q u o t e   .   P r i n t   o u t   t h e   d o c u m e n t a t i o n .   R e a d   .   I n   m y   h e a d 
 
 c o n f u s i o n   .   H o w   t o   w o r k   i n   p r a c t i c e   i s   n o t   c l e a r .   M o r e   n e w s :   d e m o n s t r a t i o n 
 
 t i o n   f o r   e x a m p l e   X T   i s   g o i n g   w r o n g .   W i t h   t h a t   k n o w l e d g e   t o   s t a r t   t h e i r 
 
 p r o g r a m   c a n   n o t   b e   ,   a n d   t h e   m o r e   t h e   a r t i s t   e x p l a i n   h o w   t o   d r a w   b e t t e r 
 
 s o   t h a t   i t   w a s   e a s i e r   t o   w r i t e   t h e n   .   Y e s ,   a n d   h o w   t o   w r i t e   -   i s   a l s o   n o t 
 
 c l e a r .   W h a t   t o   d o ?   I   s i t   d o w n   t o   p l a y   t h e   g a m e   c o m p a n y   S i e r r a   O n   L i n e ,   t h a t   t h o u g h 
 
 s o m e h o w   g e t   c o m f o r t a b l e   w i t h   t h e m .   B u t   a l l   g a m e s   r e q u i r e   c o n t r o l   u s i n g   C l u e   - 
 
 p r o n g   p h r a s e s ,   a n d   I   c e r t a i n l y   d o   n o t   k n o w   t h e m   .   S e l e c t   n o   .   D e c i d e   t o   c o n s i d e r 
 
 p r i n t   d i c t i o n a r y   s y s t e m   w o r d s . t o k   u t i l i t y   W L .   T h i s   i s   o f   l i t t l e   h e l p   ,   s i n c e 
 
 i t   t u r n s   o u t   t h a t   t h e   d i c t i o n a r y   i s   s t o r e d   o n l y   w o r d s ,   b u t   o f t e n   i t   i s   n e c e s s a r y   t o   i n t r o d u c e 
 
 w h o l e   s e n t e n c e s   ,   w h i c h   a r e   t h e n   "   s o m e   "   w a y   a n a l y z e s   i n t e r p r e t a t i o n 
 
 t o r u s   ,   a n d   d e p e n d i n g   o n   t h e   r e s u l t   o f   a n a l y s i s   o f   t h e   g a m e   c h a n g e d .   H e r e   i t   i s 
 
 h a v e   f u n !   S o   i t   w i l l   b e   p o s s i b l e   t o   w r i t e   a   t u t o r i a l   ,   w h i c h 
 
 c a n   o b s c h a t m y a   u s i n g   p h r a s e s   (   i t   t u r n e d   o u t   t h a t   o n l y   E n g l i s h   )   . 
 
 
 
           F i n d   t h a t   i n   t h e   g a m e   I n   S e a r c h   O f   L o s t   P l a n e t   (   b y   t h e   w a y ,   s h e   s t a r t i n g   - 
 
 c o m m e n c e s   k e y   p h r a s e   s t a r t   g a m e )   ,   y o u   c a n   d o w n l o a d   a n d   i n c l u d e   t h e   d e b u g g e r 
 
 s e q u e n c e   :   A l t   +   D   a n d   t h e n   S c r o l l   L o c k .   I n   t h i s   o p e n   -   o n e s 
 
 K S T O V O   w i n d o w ,   a n d   i t   a p p e a r s   t h e   t e a m .   B e g i n   t o   u n d e r s t a n d   t h a t   t h e   l e f t 
 
 t h e   t e a m   -   n u m b e r   o f   l o g i c   t o   w h i c h   i t   r e l a t e s   ,   a n d   t h e   r i g h t   a n d   u n d e r 
 
 i t   -   t h e   r e s u l t   o f   e x e c u t i o n .   I   t r y   t o   v i e w   a   p r o g r a m   s t e p   b y   s t e p   .   b u t 
 
 i t   i s   q u i t e   t e d i o u s   ,   b e c a u s e   m a n y   t e a m s   .   I   n o t i c e   t h a t   i n   t h e   w i n d o w   i f   y o u   d o   n o t 
 
 t a k e   a n y   a c t i o n   ( n o t   c o n t r o l   t h e   g a m e   w i t h   t h e   k e y b o a r d   o r   C l u e   - 
 
 c h e v y m i   w o r d s   )   s k i p s   n u m b e r s   t h e   s a m e   l o g i c   a n d   t h e   s a m e 
 
 c o m m a n d s   a n d   c o m m a n d s   b a s i c a l l y   o n l y   t e s t s .   T h a t   i s ,   a s   i f   a l l   t h i s 
 
 o c c u r s   c y c l i c a l l y .   I n   a d d i t i o n ,   i f   t h e   d e b u g g e r   h a s   b e e n   i n s e r t e d   w h i l e 
 
 w h e n   t h e   m a n   o n   t h e   s c r e e n   w a s   m o v i n g   o n   t h e   s c r e e n   d u r i n g   e a c h   o f   t h e   c h i   - 
 
 C l o v e   i s   o u t p u t   f r a m e   w i t h   a   n e w   p h a s e   o f   i t s   m o v e m e n t   (   e g   ,   p o s t   - 
 
 g r a d u a l l y   r a i s e d   h i s   l e g   )   .   R e f e r   t o   t h e   d o c u m e n t a t i o n   ,   f i n d   w o r k   C Y C L E 
 
 Y O U   S H E L L   ,   l e a r n   .   B e c o m e s   a   l i t t l e   c l e a r e r   .   I t   t u r n s   o u t   t h a t   i n - 
 
 t e r p r e t a t o r   d u r i n g   e a c h   c y c l e   o n   t h e   s c r e e n   r e d r a w s   t h e   s c r e e n   o n e 
 
 W e l l   m a n   m o v e m e n t   p h a s e   ,   d e p e n d i n g   o n   t h e   m o v e m e n t   c o m m a n d   i s   i s s u e d 
 
 (   a n d   w h e r e   )   o r   n o t   ( i t   i s   b e t t e r   t o   s e e   o n c e   t h a n   t o   r e a d   o b y a s n e i y a   ;   S O C A   - 
 
 B u y t e n   r e p e a t   i t   y o u r s e l f   )   .   S o   m a n   -   a   m a n a g e d   o b j e c t 
 
 ( E G O   -   i n   t e r m s   a d o p t e d   i n   t h e   d e s c r i p t i o n   o f   t h e   p a c k a g e   ) ,   a n d   i n   h i s   c o r r e s p o n d e n c e   p r o - 
 
 p r o g r a m m a t i c   p u t   s o m e   v i e w -   r e s o u r c e   s e r v i n g   h i s   i m a g e   o n 
 
 s c r e e n .   M o r e o v e r ,   i f   t h e   d i r e c t i o n   o f   m o t i o n   c h a n g e s   m a n   ,   t h e n   ( 
 
 t h i s   c a s e )   a u t o m a t i c a l l y   s e l e c t s   t h e   i n t e r p r e t e r   a n d   c a r t o o n   ( c y c l e 
 
 f r a m e s   i n   t h e   v i e w -   r e s o u r c e )   ,   w h i c h   d e p i c t s   m a n . 
 
 
 
         W i t h   u t i l i t y   S M   p a c k a g e   r e s t o r e s   t h e   o r i g i n a l   t e x t s   o f   t h e   l o g 
 
 I R   n u m b e r s   a r e   s e e n   i n   t h e   d e b u g g e r .   T h e n   p r i n t   t h e m   .   I t   t u r n s 
 
 V a e t h   t e x t s   l o g i c s   ( p r o g r a m s )   i s   m u c h   l a r g e r   t h a n   i t   c o u l d   b e 
 
 a s s u m e d   a s   i n   t h e   d e b u g g e r   w i n d o w   a p p e a r s   o n l y   t h o s e   o p e r a t o r s   y o u   - 
 
 o v e r c r o w d i n g   w h i c h   c u r r e n t l y   i s   n e c e s s a r y   t o   f u l f i l l   t h o s e   c o n d i t i o n s 
 
 c h e c k s   ,   w h i c h   a r e   i n c o r p o r a t e d   i n   t h e   p r o g r a m .   F r o m   t h a t   m o m e n t   I   s t a r t   S e r i e   - 
 
 a n   o f f   l e a r n   h o w   t o   w r i t e   p r o g r a m s   f o r   t h e   i n t e r p r e t e r   ,   n a m e l y   a s 
 
 Y o u   c a n   w r i t e   a   t u t o r i a l   ,   b e c a u s e   a   s i n g l e   e x a m p l e   a s   o n e   c a n 
 
 b u t   d o   n o t . 
 
 
 
 
 
                 W H A T   Y O U   N E E D   T O   K N O W   A B O U T   i n t e r p r e t e r   t o   w r i t e   a   s i m p l e 
 
                 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =   = = = = = = = 
 
                                                   T U T O R I A L   ? 
 
                                                   = = = = = = = = = = = = = = = = = = = = = 
 
 
 
 
 
           I n   t h e   w o r d s   o f   t h e   t i t l e   o f   t h e   t u t o r i a l   h a n d e d   d e l i b e r a t e l y   ,   b e c a u s e   I 
 
 I   t h i n k   t h a t   w e   w i l l   u s e   t h i s   p a c k a g e   i s   t o   c r e a t e   a   t h e m e   - 
 
 c a l   c y c l e s   o f   v a r i o u s   t r a i n i n g   p r o g r a m s   o f   d i f f e r e n t   p u r p o s e s   . 
 
 A   t r a i n i n g   d u r i n g   t h e   g a m e   -   t h i s   i s   t h e   b e s t   o p t i o n .   I   t h i n k   y o u ' l l   a g r e e   - 
 
 s u r e   t h a t   a   g o o d   t r a i n i n g   p r o g r a m   s h o u l d   b e   w r i t t e n   i n   t h e   s t y l e   o f   t h e   g a m e . 
 
 
 
           B y   p u r c h a s i n g   a   p a c k a g e   A G D S ,   y o u   g o t   b o t h   e x e m p l a r y   a n d 
 
 t u t o r i a l   "   S T O R M   "   .   A n d   n o t   o n l y   t h e   p r o g r a m   i t s e l f   ,   b u t   a l s o   p o k o m a n d n o 
 
 c o m m e n t e d   o r i g i n a l   t e x t s   o f   a l l   t h e   l o g i c s   o f   t h e   p r o g r a m .   I   a s s u m e d   t o 
 
 m e l t i n g   t h a t   t h i s   p r o g r a m   i s   f a r   f r o m   p e r f e c t ,   b u t   g e t t i n g   t o   k n o w   h e r   l o n g - 
 
 Z H n o   g i v e   y o u   a   g r e a t   h e l p   w h i l e   d e v e l o p i n g   l a n g u a g e   i n t e r p r e t e r   P a c k a g e 
 
 A G D S .   A l t h o u g h   t h i s   p r o g r a m   i s   q u i t e   s i m p l e   a n d   i t   u s e d 
 
 n o t   a l l   f o r m   a   t e a m   o f   l a n g u a g e   ,   I   h o p e   t h a t   y o u   c a n   g e t 
 
 e n o u g h   i n f o r m a t i o n   t o   t h e n   c o n f i d e n t l y   ,   "   s i g h t   "   r e a d i n g   t e x t s 
 
 l o g i c   g a m e s   c o m p a n y   S i e r r a   O n   L i n e ,   I n c .   ( C ) ,   i s   a   m o d e l   o f   w r i t i n g 
 
 p r o g r a m s   f o r   t h e   i n t e r p r e t e r   A G D S . 
 
 
 
           S o   w e   s t a r t   w i t h   q u e s t i o n s   o n   p r o g r a m m i n g   l a n g u a g e   i n t e r p r e t a t i o n 
 
 t o r u s   A G D S ,   b e c a u s e   p r o g r a m m i n g   -   t h e   m o s t   d i f f i c u l t   s t a g e   o f   t h e   g a m e   . 
 
 
 
           T h e   p r o g r a m m i n g   l a n g u a g e   i s   r a t h e r   u n u s u a l   A G D S 
 
 c h a r a c t e r   ,   w h i c h   i s   c a u s e d   b y   t h e   p e c u l i a r i t i e s   o f   t h e   i n t e r p r e t e r   : 
 
 
 
             -   C y c l i c a l   n a t u r e   o f   t h e   i n t e r p r e t e r   -   f u l l y   d e t e r m i n i n g   f a c t o r 
 
                 e x t e n d i n g   s t y l e   p r o g r a m m i n g   l a n g u a g e   A G D S .   T h i s   p o i n t   i s   q u i t e 
 
                 u n u s u a l   a n d   r e q u i r e s   s o m e   t h i n k i n g   a n d   a d d i c t i v e .   W e 
 
                 f r a c t i o n a l   c o n s i d e r   t h e   e x a m p l e   s o u r c e   p r o g r a m   "   S T O R M   " 
 
                 h o w   t o   w r i t e   p r o g r a m s   a c c o r d i n g   t o   t h e i r   c y c l i c a l   p e r f o r m a n c e   ; 
 
 
 
             -   T o t a l   f i e l d   v a r i a b l e s   ,   f l a g s   a n d   s t r i n g   v a r i a b l e s   f o r   a l l 
 
                 a n d   r o u t i n e s   a r e   l o a d e d   i n t o   m e m o r y   i n t e r p r e t e r   t h a t 
 
                 m e a n s   t h e   a v a i l a b i l i t y   o f   ( g l o b a l )   a n d   a n y   v a r i a b l e   o f   f l a g 
 
                 a n y   p o i n t   i n   t h e   p r o g r a m   a t   a n y   l e v e l   (   i n c l u d i n g   t h e   r e s e r v e d 
 
                 B a t h r o o m s   v a r i a b l e s   a n d   f l a g s   ) ; 
 
 
 
             -   E a c h   d a t a   e l e m e n t   t y p e   ( v a r i a b l e   ,   f l a g ,   r e s o u r c e )   d e n o t e d 
 
                 h a p s   u n i q u e   n u m e r i c a l   i d e n t i f i e r   w i t h i n   i t s   t y p e 
 
                 ( 0 - 2 5 5   a n d   0 - 1 1   s t o r o k o v y e   v a r i a b l e s   )   t h a t   a t   f i r s t   k a   - 
 
                 z h e t s y a   v e r y   u n c o m f o r t a b l e   ,   b u t   s o o n   g e t   u s e d   t o   a n y t h i n g   ; 
 
 
 
             -   N a m e   o f   t h e   c o m m a n d   s p e c i f i e s   t h e   t y p e   o f   d a t a   o n   w h i c h   w i l l   b e   p r o d u c t i v e 
 
                 t s y a   a c t i o n   ,   t h e   n a t u r e   o f   t h e   a c t i o n   a n d   t h e   r e s u l t   . 
 
 
 
                 F o r   e x a m p l e ,   t h e   c o m m a n d   a s s i g n m e n t   :   a s s i g n n   1 0 ,   2   -   m e a n   c h a n g e   - 
 
                 t i o n   N o .   1 0   s e t   t o   2   ;   a s s i g n v   1 0 ,   2   -   i s   n e   - 
 
                 b e l t   1 0   a s s i g n   a   v a l u e   t o   2 ,   a n d   s e t   1 0   -   m e a n i n g 
 
                 s e t   a   f l a g   i n   u n i t   1 0   .   I n   m o s t   c a s e s ,   h a v e 
 
                 j u s t   r e m e m b e r   t h a t   d o i n g   t h i s   o r   t h a t   t y p e   o f   t e a m   ,   a n d   i t s   o p e r a - 
 
                 r a n d   ; 
 
 
 
             -   A   l i m i t e d   a m o u n t   o f   i n t e r n a l   m e m o r y   i n t e r p r e t e r   m a k e s   i t s e l f 
 
                 k n o w   i n   s o m e   s i t u a t i o n s   a n d   i t   i s   f r u s t r a t i n g   b e c a u s e   w h e r e i n   i n   t h e   R A M 
 
                 c a n   b e   a   l o t   o f   s p a c e   ; 
 
 
 
             -   T h e   a v a i l a b i l i t y   o f   p o w e r f u l   c o m m a n d s   a n d   n e w _ r o o m   n e w _ r o o m _ v ,   e m p l o y e e s 
 
                 t o   c o m p l e t e l y   c h a n g e   t h e   p r o g r a m   l o g i c   ; 
 
 
 
             -   A   s i g n i f i c a n t   a m o u n t   o f   t e s t   t e a m s   ,   a l l o w i n g   n o t   o n l y 
 
                 a n a l y z e   t h e   s t a t e   v a r i a b l e s   a n d   f l a g s   ,   b u t   a l s o   t h e   p o s i t i o n   v o l u m e 
 
                 p r o j e c t s   r e l a t i v e   t o   e a c h   o t h e r   a n d   s o m e   p a i n t   o n   t h e   d e c o r   - 
 
                 t i o n s   ( u s i n g   a   P M ) ,   t h e   l i n e s   a n d   r e g i o n s   (   e . g .   ,   t h e   i n t e r s e c t i o n   o f 
 
                 o b j e c t   s i g n a l   o r   a   b a r r i e r   a t   t h e   l e v e l   o f   t h e   w a t e r   p e n e t r a t i o n   )   .   r e   - 
 
                 r e s u l t   a n a l y s i s   t e a m s   t e s t   d e t e r m i n e s   h o w   i t   w i l l   d e v e l o p 
 
                 s i t u a t i o n   i n   a c c o r d a n c e   w i t h   t h e   s c e n a r i o   ; 
 
 
 
             -   T h e   a b i l i t y   t o   p e r f o r m   r e l a t i v e l y   s i m p l e   m e a n s   o f   a n i m a t i o n 
 
                 O b j e c t s   o n   t h e   s c r e e n .   I t   s h o u l d   b e   n o t e d   t h a t   t h e   i m a g e 
 
                 a l l   o b j e c t s   t h a t   c a n   s i m u l t a n e o u s l y   m a n a g e   i n t e r p r e t a t i o n 
 
                 t o r u s   a n d   t h e   u s e r   p r o g r a m   (   a c c o r d i n g   t o   t h e   s c r i p t   ) 
 
                 a s s o c i a t e d   w i t h   t h e   v i e w -   s p e c i f i c   r e s o u r c e s   m u s t   b e   p r e - 
 
                 b u t   t r a i n e d   a r t i s t   w i t h   u t i l i t y   V I M ,   a s   o r n a m e n t a l s 
 
                 t i o n   ,   a g a i n s t   w h i c h   t h e   a c t i o n   u n f o l d s   w i t h   u t i l i t y 
 
                 P M .   T h a t   i s   a   p r o c e s s   o f   a n i m a t i n g   a n   o b j e c t   a s   i t   i s   d i v i d e d   i n t o   t w o 
 
                 s t e p   :   c r e a t i n g   a   c a r t o o n   i n   w h i c h   a l l   p h a s e s   a r e   d r a w n 
 
                 m o t i o n   o f   a n   o b j e c t   ( f o r   e x a m p l e ,   p e o p l e   m a r c h i n g   o n   t h e   s p o t )   a n d   o b j e c t i f i e d 
 
                 e l y a e m o e   p r o g r a m m a t i c a l l y   m o v e   t h e   o b j e c t   f o r   w h i c h   t h e   s c r o l l   - 
 
                 e t s y a   a s s o c i a t e d   c a r t o o n   o n   t h e   s c r e e n   ( t h i s   i s   g o i n g   h u m a n 
 
                 c e n t u r y ) .   T h e   i n t e r a c t i o n   b e t w e e n   t h e   w r i t e r   ,   a r t i s t   a n d   p r o g r a m m e r s 
 
                 t h a t   w e   w i l l   c o n s i d e r   l a t e r   . 
 
 
 
             -   A b i l i t y   t o   u s e   t h e   i n t e g r a t e d   d e b u g g e r   ,   o n   -   v y z y v a e m r g o 
 
                 p u s h   o f   t h e   k e y   S c r o l l   L o c k ,   i f   t h e   t a b l e   f o r   t h e   d e b u g g e r   l o g . d b g   - 
 
                 w i l l   s h i p   i n   m e m o r y   o f   t h e   i n t e r p r e t e r . 
 
 
 
                 M u s t   w a r n   t h a t   c o m p u t e r s   I B M   P C   X T   r e p l e n i s h 
 
                 C a l l   d e b u g g e r   w h e n   c r e a t i n g   p r o g r a m s   p r o b a b l y   w i l l   n o t   s u c c e e d   , 
 
                 b e c a u s e   D U U   u t i l i t i e s   a n d   V M   (   v e r s i o n s   w h i c h   w e   h a v e   )   n o t   w o r k   - 
 
                 c o r r e c t l y   w h e n   t h e   l o g . d b g   i n   d a t a   v o l u m e s   ,   a n d   o n l y 
 
                 l o g . d b g   o n l y   o n   I B M   P C   X T .   S i n c e   t h e   p r o g r a m   "   S T O R M   "   c r e a t i o n 
 
                 v a l a s   o n   I B M   P C   X T ,   I   w r o t e   h e r   a   " b l i n d   "   b e c a u s e   d e b u g g e r 
 
                 c o u l d   n o t   u s e   ( I   c a n   n o t   n o w )   a n d   i n   t h e   p r o g r a m 
 
                 i t   i s   ,   o f   c o u r s e ,   a v a i l a b l e .   T h i s   i s   s o m e w h a t   c o m p l i c a t e   y o u   s t u d y 
 
                 " T h u n d e r s t o r m "   . 
 
 
 
 
 
                                           H O W   I   p r o g r a m m e d   " T h u n d e r s t o r m " 
 
                                           = = = = = = = = = = = = = = = = = = = = = = = = = = = = 
 
 
 
           B y   t h e   t i m e   w h e n   i t   w a s   n e c e s s a r y   t o   b e g i n   t o   w r i t e   t h e   p r o g r a m   ,   I 
 
 a l r e a d y   h a d   a   r o u g h   s c r i p t   t h a t   w e   w a n t   t o   g e t   ,   b u t   n o t   y e t 
 
 k n e w   w h i c h   e n d   f o r   h e r   t o   t a k e . 
 
 
 
                                                       I   w a s   g i v e n   S C E N A R I O 
 
                                                       - - - - - - - - - - - - - - - - - 
 
 
 
           A n d   t h a t   i f   I   g o t   t h e   s c r i p t   ?   H o w   h e   c o m e s   t o   h i m   b y 
 
 Y o u   c a n   w r i t e   a   p r o g r a m   ?   O n   h o w   t o   w r i t e   a   s c r i p t   a s   d e t a i l e d 
 
 b u t   i t   w o r k e d   o u t   v e r y   m u c h   d e p e n d s   ,   i n   p a r t i c u l a r ,   t h e   e f f i c i e n c y   o f 
 
 p r o g r a m m e r .   T h a t   s c e n a r i o   ,   w h i c h   h a s   b e e n   s u g g e s t e d   t o   m e   t o   w r i t e   a t   a l l ,   a n d 
 
 n o t   i n   r e l a t i o n   t o   t h e   c a p a b i l i t i e s   o f   t h e   i n t e r p r e t e r .   T h e r e f o r e ,   I   m u s t   s a y   t h a t 
 
 A c c o r d i n g   t o   m e   t h e   s c r i p t   I   u s e d   o n l y   i n   o r d e r   t o   s u s t a i n   a n   - 
 
 e x t e n d i n g   t h e   s t o r y   o f   t h e   t r a i n i n g   p r o g r a m   o n   a   g i v e n   t o p i c   a n d   n o t   "   m i s q u o t e   "   a c c o m p a n i e d 
 
 m a i n t a i n e r   t e x t ,   s o   g i v e   i t   h e r e   d o e s   n o t   m a k e   s e n s e   .   t h e   p l o t   b e c o m e s 
 
 c l e a r   w h e n   w e   a n a l y z e   t h e   s o u r c e   c o d e   o f   p r o g r a m s . 
 
 
 
           B u t   h e r e   I   w a n t   t o   e x p r e s s   t h e i r   v i e w s   o n   h o w   t h e   c r i t e r i a 
 
 s c r i p t   m u s t   m a t c h . 
 
 
 
           F i r s t   o f   a l l ,   t h e   i d e n t i t y   o f   t h e   w r i t e r   a n d   h i s   r o l e   i n   w o r k i n g   o n   a   p r o j e c t   - 
 
 t h   .   W r i t e r   m u s t   b e   a b l e   t o   w r i t e   g o o d   s c r i p t s   i n   g e n e r a l ,   b e   a   g o o d 
 
 p s y c h o l o g i s t   ,   a s   w e l l   a s   a   g o o d   u n d e r s t a n d i n g   o f   t h e   p o s s i b i l i t y   o f   a n   i n t e r p r e t e r   , 
 
 t r u d n o v o p l o s c h a e m y   n o t   t o   w r i t e   a   s c r i p t   ( w h i c h   f o r   t h e   f i r s t   t i m e   ,   p r o b a b l y 
 
 p o s s i b l e )   . 
 
 
 
           T h e   r o l e   o f   t h e   w r i t e r   i n   t h e   o r g a n i z a t i o n   o f   t h e   p r o j e c t   -   a   k e y   i f 
 
 a s s u m e   t h a t   t h e   m i n i m u m   g r o u p   i n c l u d e s   3   p e o p l e :   w r i t e r ,   a r t i s t 
 
 a n d   t h e   a c t u a l   p r o g r a m m e r   .   S c r e e n w r i t e r   a t   t h e m   w r i t t e n   ,   s h o u l d 
 
 i m p l i c i t l y   o r g a n i z e   i n t e r a c t i o n   b e t w e e n   t h e   a r t i s t   a n d   p r o g r a m m e r . 
 
 
 
           W o r k   o f   t h e   a r t i s t   a n d   p r o g r a m m e r   c a n   b e   s e p a r a t e d   i n   t i m e   : 
 
 t h e   a r t i s t   h a s   t o   w o r k   w i t h   t h e   s c r i p t   a h e a d   ,   c r e a t i n g   a n d   v i e w - 
 
 p i c t u r e -   r e s o u r c e s   t h a t   w i l l   c o n n e c t   t h e   p r o g r a m m e r   t o   p r o g r a m   c o r r e - 
 
 a c c o r d a n c e   w i t h   t h e   s a m e   s c e n a r i o .   W h i l e   w o r k i n g   o n   t h e   p r o g r a m   v e r y   i m p a c t   - 
 
 Y o u   c a n   h a v e   t o   m a k e   s o m e   c h a n g e s   i n   t h e   a l r e a d y   p a i n t e d   p a i n t e r 
 
 t h   .   T h e r e f o r e ,   a f t e r   t h e   s c r i p t   w a s   w r i t t e n   c l o s e   i n t e r a c t i o n   p r o - 
 
 p r o g r a m m e r   a n d   a r t i s t   c a r e f u l l y   ,   e s p e c i a l l y   b e t w e e n   t h e   c o s t   o f   l a b o r 
 
 a r t i s t   a n d   p r o g r a m m e r   a l m o s t   a l w a y s   m e t   s o m e   - 
 
 i n g   " b a l a n c e "   ,   e s p e c i a l l y   w h e n   i t   c o m e s   t o   w o r k i n g   w i t h   v i e w -   r e s o u r c e s   . 
 
 I n c r e a s i n g   t h e   s h a r e   o f   t h e   l a b o r   o f   t h e   a r t i s t   a l m o s t   a l w a y s   r e d u c e s   t h e   l a b o r   s h a r e 
 
 p r o g r a m m e r   a n d   v i c e   v e r s a . 
 
 
 
           H e r e   i s   a n   e x a m p l e   .   T h e   p r o g r a m   "   S T O R M   "   i s   t h e   m o m e n t   ,   w h i c h   e x p l a i n s 
 
 t h e   i o n i z a t i o n   p r o c e s s   .   N e e d   t o   s h o w   h o w   o v e r c l o c k e d   e l e c t r o n   h i t s 
 
 a n d   w h e r e i n   a n   a t o m   f r o m   i t   k n o c k s   t h e   e l e c t r o n   .   A n   a r t i s t   c a n   d r a w   f r o m   - 
 
 s e p a r a t e l y   3   v i e w -   r e s o u r c e :   a t o m   ,   e l e c t r o n   a n d   o n e   e l e c t r o n ,   w h i c h   i s   y o u   - 
 
 b i t s   f r o m   t h e   a t o m .   B u t   t h e n   t h e   p r o g r a m m e r   w i l l   n e e d   t o   s e p a r a t e l y   d e s c r i b e   a l l   t h e s e 
 
 3   i t e m s   ,   c o n n e c t   t h e m   w i t h   t h e   v i e w -   r e s o u r c e s   t h a t   w i l l   s e r v e   t h e i r   i m a g e 
 
 z h e n i y a m i   p r o g r a m   o n   t h e   s c r e e n   a n d   t h e   w h o l e   p r o c e s s   o f   i o n i z a t i o n ,   i e ,   w h e n   - 
 
 g i v e   s o m e   m o t i o n   o f   t h e   e l e c t r o n s   d e t e r m i n e   t h e   m o m e n t   t h e y   t o u c h   t h e   a t o m   a n d 
 
 t h e n   d e s c r i b e   h o w   t o   m o v e   t h e   e j e c t e d   e l e c t r o n   ,   w h i c h   h a s   a 
 
 v e r y   t i m e - c o n s u m i n g   a n d   l e a d s   t o   a   s t e e p   i n c r e a s e   p r o g r a m m m a   (   i n   - 
 
 P o s s i b l e   n e e d   t o   e n t e r   a   s u b r o u t i n e )   .   A n d   y o u   c a n   m a k e   e v e r y t h i n g   m u c h   p r o - 
 
 a l k a l i n e   ,   b u t   i t   s h o u l d   w o r k   a r t i s t   t o   d r a w   t h e   w h o l e   p r o c e s s 
 
 o n e   c y c l e   (   a n i m a t e d   )   v i e w -   o n e   r e s o u r c e   ,   a s   i s   d o n e   i n   "   G r o s 
 
 W E   .   "   I n   t h i s   c a s e   t h e   p r o g r a m m e r   t o   d o   v e r y   l i t t l e   r e m a i n s   t o   b e   d o n e   :   t o   d e s c r i b e 
 
 o n e   o b j e c t   ,   a s s o c i a t e   i t   w i t h   t h i s   v i e w -   r e s o u r c e   a n d   s c r o l l   c a r t o o n   . 
 
 B u t   w i t h   s u c h   a   c h o i c e   m u s t   b e   c o n s i d e r e d   t h a t   e n d l e s s l y   i n c r e a s i n g   c o - 
 
 a m o u n t   o f   f r a m e s   i n   t h e   m o v i e   c a n   n o t   b e   :   i t s   l i m i t a t i o n s   i m p o s e   a   r e   - 
 
 V I M   e d i t o r   a n d   i n t e r p r e t e r   i t s e l f   ,   i n   a d d i t i o n   ,   a   l a r g e   v i e w -   r e s o u r c e   t a k e s 
 
 m o s t   o f   t h e   i n t e r n a l   m e m o r y   a n d   t h e   i n t e r p r e t e r   m u s t   r e m e m b e r   t h a t 
 
 e v e n   i f   n o t   e x c e e d e d   t h e   m e m o r y   l i m i t   ,   t h e n   r e d r a w   s i g n i f i c a n t   i n 
 
 i m a g e   s i z e   c a n   e v e n   l e a d   t o   a   n o t i c e a b l e   s l o w i n g   d o w n 
 
 p r o g r a m .   I t   i s   n o t   n e c e s s a r y   t o   c r e a t e   a n i m a t i o n s   f r o m   m o r e   t h a n   2 5   s e c o n d a r y   ( 5 0 x 
 
 5 0   )   f r a m e s   . 
 
 
 
           W e   w e r e   a   l i t t l e   d i s t r a c t e d   f r o m   t h e   q u e s t i o n   w h a t   s h o u l d   b e   t h e   s c r i p t .   s c e n e   - 
 
 r i e s   s h o u l d   b e   f u l l y   a n d   d e s c r i b e   i n   d e t a i l   t h e   d e v e l o p m e n t   o f   t h e   p l o t .   W h e n   u s e d 
 
 C a l l   t e r m i n o l o g y   a d o p t e d   i n   t h e   d e s c r i p t i o n   o f   t h e   p a c k a g e ,   m u s t   d e t a i l 
 
 b e   d e s c r i b e d   : 
 
 
 
           -   I n   g e n e r a l ,   a l l   t h e   r o o m   i n   w h i c h   t h e   a c t i o n   u n f o l d s   a n d 
 
               c o n d i t i o n s   u n d e r   w h i c h   a   t r a n s i t i o n   f r o m   r o o m   t o   r o o m   , 
 
               i e   c o n d i t i o n s   c h a n g e   s c e n e r y   a n d   p r o g r a m s   t h a t   m e e t s   t h e   r o o m   ; 
 
 
 
           -   A c t i v i t i e s   t h a t   o c c u r   i n   e a c h   r o o m   ,   a n d   s p e c i f i e d   c o n d i t i o n s 
 
               d i t i o n s   u n d e r   w h i c h   e a c h   a c t i o n   o c c u r s   ; 
 
 
 
           -   A l l   t h e   i t e m s   t h a t   a r e   i n   t h e   r o o m   ,   a n d   m u s t   b e 
 
               s t a t e d   w h e t h e r   s u b j e c t   t o   t h e   s c e n e r y   ( p i c t u r e -   r e s o u r c e )   o r 
 
               d e p i c t e d   s e p a r a t e l y   ( v i e w -   r e s o u r c e )   ,   w h i c h   w i l l   s u b s e q u e n t l y   i m p a c t   - 
 
               p o s s i b i l i t y   t o   p r o g r a m m a t i c a l l y   m a n a g e   t h e m   a s   a n   o b j e c t   ,   i t   i s   i m p o r t a n t   f o r   h u   - 
 
               d o z h n i k o v   ; 
 
 
 
           -   T o   b e   d e t e r m i n e d   ,   a t   l e a s t   a p p r o x i m a t e l y   a   l o c a t i o n 
 
               a l l   o b j e c t s   c r e a t e d   b y   t h e   a r t i s t   a s   a   v i e w -   r e s o u r c e s   ,   i t   i s   i m p o r t a n t 
 
               f o r   t h e   p r o g r a m m e r   ; 
 
 
 
           -   A l l   t h e   i t e m s   t h a t   t h e   p l a y e r   c a n   a s s i g n   a   r e s u l t   o f   n o n - 
 
               w h i c h   a c t i o n s   a n d   t h e s e   a c t i o n s   t h e m s e l v e s   ; 
 
 
 
           -   A p p r o x i m a t e   p r i o r i t i e s   o f   a l l   i t e m s   a s   b e l o n g i n g   t o   t h e   s c e n e r y   , 
 
               a n d   i z o r a z h a y u s c h i h s y a   v i e w -   r e s o u r c e s   t h a t   g i v e   t h e   i l l u s i o n   o f   d i s t r i b u t i o n 
 
               o f   s u b j e c t s   i n   d e p t h   p i c t u r e   ,   i t   i s   i m p o r t a n t   f o r   t h e   a r t i s t   a n d   t h e   p r o - 
 
               p r o g r a m m e r s   ; 
 
 
 
           -   T h e   i n t e r a c t i o n   b e t w e e n   t h e   o b j e c t s   a r e   ,   f o r   e x a m p l e ,   w h e t h e r   t h e   o b j e c t 
 
               r e s p o n d   t o   o t h e r   o b j e c t s   a s   i n s u r m o u n t a b l e   o b s t a c l e s 
 
               o r   n o t ,   w h e t h e r   t o   c r o s s   t h e   l i n e   o f   t h e   h o r i z o n   o r   e x i t 
 
               b e y o n d   a   c e r t a i n   a r e a   ,   e t c .   i t   i s   i m p o r t a n t   f o r   t h e   p r o g r a m m e r   ; 
 
 
 
           -   T h e   c o n d i t i o n s   u n d e r   w h i c h   t h e   i m a g e   o f   t h e   o b j e c t   o n   t h e   s c r e e n   c a n   b e   c h a n g e d   - 
 
               t s y a   ;   F o r   e x a m p l e ,   a   p e r s o n   w a l k i n g   c r o s s e s   t h e   c r e e k .   W h e n   h e   e n t e r s 
 
               i t   s h o u l d   a p p e a r   i n   t h e   i m a g e   o f   a   m a n   t o   h i s   k n e e s   i n   w a t e r   a n d 
 
               e t c . ; 
 
 
 
           -   A l l   m e s s a g e s   a n d   c o n v e r s a t i o n s   t h a t   o c c u r   i n   a   p a r t i c u l a r   r o o m 
 
               u n d e r   c e r t a i n   c o n d i t i o n s   a n d   t h e s e   c o n d i t i o n s   t h e m s e l v e s   ; 
 
 
 
           -   D i c t i o n a r y   G a m e s   (   t u t o r i a l   )   c o n t a i n i n g   w o r d s   f r o m   w h i c h 
 
               a l l o w e d   t o   b u i l d   k e y   p h r a s e s   ; 
 
 
 
           -   K e y   p h r a s e s   t h a t   m a n a g e s   o b j e c t s   a n d   r e a c t i o n s   t o   t h e m   a n d 
 
               e t c . 
 
 
 
           I t   i s   l i k e l y   t h a t   y o u   y o u r s e l f   c a n   a d d   t o   t h e   l i s t   o f   r e q u i r e m e n t s   p r e d y a v   - 
 
 t r o l l e d   t o   a   g o o d   s c e n a r i o . 
 
 
 
 
 
           
 
           
 
 
 
 
 
 
 
 
 
           
 
 
 
 
 
                                               
 
                                               - - - - - - - - - - - - - - - - - - - - - - - - 
 
 
 
           
 
 